/*
 * parser.h
 *
 *  Created on: 15/09/2010
 *      Author: dela
 */

#ifndef PARSER_H_
#define PARSER_H_

#include "../domain/film.h"
#include "../domain/person.h"
#include "../domain/graph.h"
#include "../domain/ListaSimple.h"
#include <stdio.h>
#include <stdbool.h>

#if !defined(NAME_MAX_LENGTH)
#define NAME_MAX_LENGTH 75
#endif

#if !defined(PATH_START)
#define PATH_START "DataSet/data-"
#endif

#if !defined(PATH_END)
#define PATH_END ".xml"
#endif

/**
 * Pre: El file tiene que haber sido abierto para lectura.
 *
 * En film se retorna la siguiente pelicula en el archivo.
 *
 * Devuelve:
 * true de haber encontrado una película,
 * false de haber llegado a fin de archivo.
 */
bool parser_getNextFilm( FILE *file, TFilm *film );

/**
 *
 */
void parser_buildStructData( TGraph *graph, TListaSimple *films, TListaSimple *people, int *peopleAmount );

#endif /* PARSER_H_ */
